freecivfandomcom-20200223-history
NEWS-2.4.4
= WHAT'S CHANGED SINCE 2.4.3 = 2.4.4 is a bug-fix release. Notable bugs fixed include serious issues in East Asian locales on Windows, occasional inability to switch governments in the Gtk client, research in games with teams, and premature nuclear explosion. Server / General Changes affecting players (supplied rulesets) * Numerous fixes to research in games with teams: ** With team_pooled_research enabled: *** Technology cost now takes into account effects from all players in the team; previously it was picking a random player for penalties such as the Novice AI science penalty. *** Similarly, tech upkeep now takes into account all players in a team. *** If a technology is lost, all team members share the effects (such as losing their government), and all clients can see that the tech is lost. *** All clients are kept up to date with accurate progress of current research. ** With team_pooled_research disabled: only one player per team was getting the free techs given at the start of the game (e.g., with the 'techlevel' setting). * Other fixes to tech loss: ** The server's count of a player's technologies was not reduced. This could cause technology cost to be too high and have other bad effects. ** Ruleset effects that survived the global loss of a technology (such as wonder obsoletion) did not survive a save/reload cycle. * Tech upkeep cost was slightly larger than intended. * When following orders into fogged territory, a unit will now abort its orders if it runs into an unexpected unit or city on its last step (rather than blindly attacking, etc). * Transported units or those in cities could fail to be revealed when entering an alliance. * 'unitwaittime' now applies to exploding nuclear units in place as well as to regular attacks. * Investigating an empty city that was previously known to contain units mistakenly displayed the former units as still present/supported. * When the 'foggedborders' server option was enabled, border information was not included in map transfers between players. * Fix a possible server crash when a diplomat is killed after bribing a unit. * Fix some assertion failures when changing player (for instance in edit mode). * Fix bugs with taking AI players and entering/leaving AI or 'away' mode: ** Taking an AI player could leave the player with invalid tax rates. ** Putting a player who'd previously been /away under full AI control could leave them with the conservative 'away' skill level rather than a proper AI skill level. ** AI state was not set up and cleared correctly when changing '/away' mode. For the classic AI, this could lead to incorrect defense calculations. ** 'autotoggle' and 'aitoggle' now work for barbarian players (as 'away' did before). * In the multiplayer ruleset, ensure notifications are sent out about new technologies gained from Philosophy or Darwin's Voyage. * Prevent diplomacy with barbarian players in the civ1 and civ2 rulesets (in civ1, it was possible to attempt treaty with pirates but not barbarians). * Prevent team-mates from withdrawing shared vision from each other. * Remove spurious assertion failures about MAP_MAX_LINEAR_SIZE when generating large maps. * For the purposes of credit in the rank log, any user detaching from a player (even an observer) was resetting the username used for ranking. For now the ranking rules have been reverted to those used up until 2.3.2. * Fixes to voting: ** Do not call votes which will immediately pass (for instance if a user is alone on a server). ** Fix incorrect vote information displayed in a client which connects while a vote is in progress. * The 'surrender' command now does additional sanity checks. * Fix display of team names. Changes affecting other rulesets / modders * Fixes to rulesets with root requirements in their technology tree: ** Fix general slowness (sometimes extreme) in such rulesets. ** Research could fail to pick the next technology toward a faraway goal. Changes affecting server operators * Patch CVE-2014-5461 in Freeciv's embedded Lua 5.1 interpreter. This could conceivably allow a malicious modpack or script to escape the sandbox. * Fix a possible server crash on quit. * Creating a player midgame (with /create or Lua script) didn't initialize city style and gender correctly. * The /create command now validates the AI type argument better. * When built without readline support, the server could stop accepting input after an empty line. * More robustness against loading invalid savegames. General * Several fixes to pathfinding, used for client goto and for the AI: ** Units which will be unable to move next turn but still have move points this turn (for instance due to tech loss) are now handled correctly. (This could lead to premature nuclear explosion in rulesets where nuclear units require extra technology to move, such as the civ2civ3 add-on.) ** A collection of general fixes which, together with client-specific fixes, we hope will resolve a client crash observed on Windows ( ), and probably fix other bugs too. ** Other minor fixes and speed improvements. * Already-built wonders are now dismissed when considering what players can ever build. This affects the client city UI and may also affect AI behavior. * Fix a bug which could cause strings to contain invalid/truncated UTF-8 sequences. * Fix/improve diagnostic messages in error cases, notably including network failures. * Fix a possible crash when an --enable-debug build tried to print a very deep backtrace. * Minor speed optimization. * Memory savings and leak fixes. * Various internal changes which should only affect developers. AI * The AI was undervaluing units defined as good defenders in the ruleset, and overvaluing 'OK' defenders. * The AI could continue trying to build worker units in inappropriate situations, such as where the population cost would cause a city to disband. * The AI now considers the effect of the 'diplcost' setting when evaluating the value of a gold transfer clause in a treaty. Clients * The Windows Gtk client is built against a different Gtk version, fixing major problems in East Asian locales, including inability to use the chatline and other text boxes, and failure to display the online help. * Fix a longstanding bug in the Gtk client that could make it impossible to select a new government. * The client now supports loading a save file from the command line directly, with the --file command line option. * The 'Explode Nuclear' command is now more careful; previously, if the nuclear unit was unable to reach the specified destination (or move at all), it would explode regardless (this could happen due to 'unitwaittime', due to another bug). Also, the command now supports setting waypoints. * Various fixes to client goto. (Some of these may resolve a client crash observed on Windows: .) ** Ignore duplicate waypoints in client goto, and attempts to go nowhere. ** Improve behaviour if a unit moves or is lost while the user is in the middle of specifying a goto. * Fix client error messages when manipulating units with a zero move rate. * Some fixes to spy and caravan action dialogs: ** Some buttons were active when the relevant action was not available. ** (Gtk) When multiple spy action dialogs were active at the same time, orders could end up being issued to the wrong unit. * Fix a cause of the client starting a server which it then could not connect to. * Fix error messages and possible instability when the city governor is working on a city that has been destroyed. * Fix some graphical glitches when moving units. * Fix an error message when observing a player who is building a spaceship. * Map editor fixes and improvements: ** Fix bugs in tile copy and paste: *** Tiles were pasted in completely the wrong place. *** Copying units could cause assertion failures. *** The client could remember possibly-invalid tiles from one game to the next. ** Prevent setting normal players to barbarian and other unsuitable nations. * (Gtk) With the 'Help' box checked in the science dialog, technology help would pop up randomly at turn end and other times. * (Gtk3) Fix a bug causing the chat window to be minimised after reconnecting, and assertion failures. * (Gtk3) Various display issues: ** Fix problems with flag display. ** Fix fog-of-war in some tilesets. ** Miscellaneous cosmetic tweaks. * (SDL) Fix client crash when attempting industrial sabotage of a city with no buildings. * (SDL) Fix incorrect background color on some dialogs. Tilesets / Art * The Cimpletoon tileset now includes graphics for a Migrant unit, like other supplied tilesets. This is used for instance in the civ2civ3 add-on. * The Crusader nation was using a large flag by mistake in small tilesets such as Trident. Help / Documentation * Miscellaneous improvements to in-game text and user documentation. * Miscellaneous changes to developer/ruleset docs. Translations * Updated translations: ** Complete translations: Catalan, French, Polish, British English, Spanish, Russian. ** Incomplete translations: Finnish (97.1%). Build/portability * Fix compilation with Glib older than 2.32. * Fix failure to build twice in a row due to missing mkinstalldirs. * Fix inability to compile with Python 3. * Fix some compiler warnings. * New configure options --with-desktopdir and --with-appdatadir for finer control of installation locations. * Add search keywords to .desktop files. See NEWS for older lists of changes. Category:NEWS